#ifndef _CYLINDER_H
#define _CYLINDER_H

#include <pcl/ModelCoefficients.h>
#include <pcl/io/openni2_grabber.h>
#include <pcl/point_types.h>
#include <pcl/filters/extract_indices.h>
#include <pcl/filters/passthrough.h>
#include <pcl/filters/voxel_grid.h>
#include <pcl/features/moment_of_inertia_estimation.h>
#include <vector>
#include <pcl/sample_consensus/method_types.h>
#include <pcl/sample_consensus/model_types.h>
#include <pcl/segmentation/sac_segmentation.h>
#include <pcl/segmentation/extract_clusters.h>
#include <pcl/impl/point_types.hpp>
#include <pcl/visualization/cloud_viewer.h>
#include <pcl/console/time.h>
#include <pcl/features/normal_3d.h>

#include <iostream>
#include <string.h>

using namespace std;

extern char mode;
extern pcl::console::TicToc tt;


class FindCylinder
{
public:
	FindCylinder();  // Construct a cloud viewer, with a window name


	void cloud_cb_(const pcl::PointCloud<pcl::PointXYZ>::ConstPtr &cloud);
	void cylinder_run();
	pcl::visualization::CloudViewer viewer;
};
void plane();

#endif     
